Policies generally refer to rules that are enforced in any number of situations. A business, for instance, may have certain policies affecting its employees, equipments, services, etc. Computer systems and infrastructures may include policies relating to its components, users, usage, etc. Telecommunications systems may have rules such as which calls to accept, reject, reroute, etc. Other examples abound. Enterprises, corporations, small entities and the like generally implement a vast number of different policies and rules that fit their needs and requirements, for instance, using software tools that can automatically monitor and implement those policies. However, even with those sophisticated software tools that automate policy evaluations, it is inevitable that some evaluations result in erroneous decisions being made that violate the existing policies. Errors may occur, for example, due to loosely coupled policy statements that are created by different users and entities, conflicting policy statements existing at the same time, and the like. Once the policy decisions are rendered and enforced erroneously, there is no easy way of knowing how the errors occurred. Accordingly, it is desirable to have a system and method to trace back and debug evaluation steps that rendered a policy decision.